// 用来测试构造函数的 return 
function ReturnString(params) {
  this.var = params
  return String('sss')
}


function ReturnStringObject(params) {
  this.var = params
  return new String('sss')
}

function ReturnObject(params) {
  this.var = params
  return {
    var: 'var string',
    rav: 'rav obj'
  }
}

let returnStr = new ReturnString('str')
let returnStrObj = new ReturnStringObject('str obj')
let returnObj = new ReturnObject('obj')


console.log(returnStr, returnStrObj, returnObj)
// ReturnString { var: 'str' } [String: 'sss'] { var: 'var string', rav: 'rav obj' }

function PrintThis() {
  console.log(this)
}

let printThis = new PrintThis()
